package com.ev.system.domain;

import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.Date;


/**
 * 部门管理
 * 
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class DeptDO implements Serializable {
	private static final long serialVersionUID = 1L;
	private Long deptId;
	//上级部门ID，一级部门为0
	private Long parentId;
	//部门名称
	private String name;
	//排序
	private Integer orderNum;

	@ApiModelProperty(value = "" )
	private Long createBy;
	//
	@ApiModelProperty(value = "" )
	private Date createTime;
	@ApiModelProperty(value = "" )
	private Long providerId;
	//
	@ApiModelProperty(value = "" )
	private Long updateBy;
	//
	@ApiModelProperty(value = "" )
	private Date updateTime;
	//是否删除  -1：已删除  0：正常
	private Integer delFlag;
	//组织类型
	private Long type;
	private String typeName;

	private String idPath;

	//部门编号
	@ApiModelProperty(value = "部门编号" )
	private String deptCode;
	//分管领导
	@ApiModelProperty(value = "分管领导" )
	private Long branchedLeaders;
	//部门负责人
	@ApiModelProperty(value = "部门负责人" )
	private Long deptLeader;
	//负责人电话
	@ApiModelProperty(value = "负责人电话" )
	private String leaderPhone;
	//办公电话
	@ApiModelProperty(value = "办公电话" )
	private String officePhone;
	//所在地区
	@ApiModelProperty(value = "所在地区" )
	private String deptArea;
	//详细地址
	@ApiModelProperty(value = "详细地址" )
	private String deptAddress;

	@ApiModelProperty(value = "所属公司" )
	private Long companyId;

	public DeptDO(Long deptId, Long parentId, String name, String deptCode) {
		this.deptId = deptId;
		this.parentId = parentId;
		this.name = name;
		this.deptCode = deptCode;
	}

	@Override
	public String toString() {
		return "DeptDO{" +
				"deptId=" + deptId +
				", parentId=" + parentId +
				", name='" + name + '\'' +
				", orderNum=" + orderNum +
				", delFlag=" + delFlag +
				'}';
	}
}
